package com.bingxue.edu.management.education.model.entity;

import com.bingxue.edu.framework.common.model.BaseEntity;
import com.mybatisflex.annotation.Table;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

@Data
@EqualsAndHashCode(callSuper = true)
@Table("edu_class_stat")
public class ClassStat extends BaseEntity {

    @Schema(description = "班级id")
    private String classId;

    @Schema(description = "班级限额")
    private Integer plannedStudentCount;

    @Schema(description = "实际人数")
    private Integer passedStudentCount;

    @Schema(description = "续报人数")
    private Integer renewalStudentCount;

    @Schema(description = "续报人数")
    private Integer cancelStudentCount;

    @Schema(description = "留存人数")
    private Integer retainedStudentCount;

    @Schema(description = "总课次数量")
    private Integer totalLessonCount;

    @Schema(description = "取消课次数")
    private Integer cancelLessonCount;

    @Schema(description = "续报率")
    private Double renewalRate;

    @Schema(description = "退课率")
    private Double cancelRate;

    @Schema(description = "满班率")
    private Double fullRate;

    @Schema(description = "留存率")
    private Double retainedRate;

    @Schema(description = "计算日期")
    private LocalDateTime computeDate;

    @Schema(description = "是否确认")
    private Boolean confirmed;
}
